
/***
 * @Description:这是协议栈的初始化C语言文件和协议栈的软件基础架构C语
 * @Author: Liverpool
 * @Date: 2024-01-20 17:41:09
 * @LastEditTime: 2024-01-20 17:41:16
 * @LastEditors: Liverpool
 */
#include "net.h"

/***
 * @description: 协议栈的初始化函数
 * @Author: Liverpool
 * @Date: 2024-01-20 17:42:14
 * @return {*} 协议栈的运行错误
 */
net_err_t net_init(void)
{
    debug_info(Debug_NetInit, "net init...");
    net_plat_init();        // 网络平台初始化
    tools_init();           // 工具模块初始化
    message_handler_init(); // 消息处理机制初始化
    packet_model_init();    // 网络数据包模块进行初始化
    net_timer_init();       // 定时器初始化
    net_interface_init();   // 网络接口初始化
    loopback_init();        // 回环网卡初始化
    ethernet_init();        // 以太网协议初始化
    arp_init();             // ARP协议初始化
    ipv4_init();            // IPv4协议初始化
    icmpv4_init();          // ICMP协议初始化
    socket_init();          // socket表结构初始化
    raw_init();             // raw模块初始化
    return NET_ERR_OK;
}
/***
 * @description: 协议栈的启动函数
 * @Author: Liverpool
 * @Date: 2024-01-20 17:43:10
 * @return {*} 协议栈的运行错误
 */
net_err_t net_start(void)
{
    message_handler_start();
    debug_info(Debug_NetInit, "net is running...");
    return NET_ERR_OK;
}